package com.zhicheng.service;

import com.zhicheng.pojo.Category;
import com.zhicheng.pojo.CategoryTwo;
import com.zhicheng.pojo.dto.CategoryPageQueryDTO;
import com.zhicheng.pojo.result.PageResult;
import com.zhicheng.pojo.vo.CategoryTwoVO;
import com.zhicheng.pojo.vo.CategoryVO;
import com.zhicheng.pojo.vo.GoodVO;

import java.util.List;

public interface CategoryService {

    /**
     * 根据id查询一级分类
     * @param id
     * @return
     */
    CategoryVO getCategoryById(Long id);

    CategoryTwoVO getGoodBySubCategoryId(Long id);

    PageResult<GoodVO> list(CategoryPageQueryDTO categoryPageQueryDTO);

    PageResult<GoodVO> getByGoodName(String name, int page, int pageSize);

    List<CategoryTwo> getSubCategory();

    PageResult<Category> getCategoryPage(int page, int pageSize);

    void addCategory(Category category);

    void updateCategory(Category category);

    void deleteCategory(Long id);

    PageResult<CategoryTwo> getSubCategoryPage(Long categoryId,int page, int pageSize);

    void addSubCategory(CategoryTwo categoryTwo);

    void updateSubCategory(CategoryTwo categoryTwo);

    void deleteSubCategory(Long id);

    List<Category> getCategory();
}
